shell_app_state_transition emits a signal, so invoke it only when
ready, or signal handlers will see an object which is in an invalid
state.
https://bugzilla.gnome.org/show_bug.cgi?id=632501
g_object_freeze_notify (G_OBJECT (app));
- if (app->state != SHELL_APP_STATE_STARTING)
- shell_app_state_transition (app, SHELL_APP_STATE_RUNNING);
-
if (!app->running_state)
create_running_state (app);
if (user_time > app->running_state->last_user_time)
app->running_state->last_user_time = user_time;
+ if (app->state != SHELL_APP_STATE_STARTING)
+ shell_app_state_transition (app, SHELL_APP_STATE_RUNNING);
+
g_object_thaw_notify (G_OBJECT (app));
g_signal_emit (app, shell_app_signals[WINDOWS_CHANGED], 0);